#ifndef CONTROLADORSERVICIOS_H
#define CONTROLADORSERVICIOS_H

#include <vector>
#include <string>
#include <servicio.h>

namespace gge
{

class ControladorServicios {

	static ControladorServicios* ms_instance;

public:
	static ControladorServicios* Instance();
	static void Release();

	Servicio *ObtenerServicio(IdServicios id_clase);

	bool AgregarServicio(Servicio *pServicio);
	
	bool QuitarServicio(Servicio *pServicio);
	
	void PausarServicios();
	void ReanudarServicios();
	void TerminarServicios();
	
	void Actualizar();
	
private:
	ControladorServicios();
	~ControladorServicios();
	
	std::vector< Servicio > m_listaServicios;

};

}

#endif // CONTROLADORSERVICIOS_H
